﻿using FreeSql.DataAnnotations;
using ManaMaple.DB.Entity;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Text;

namespace ManaMaple.Entity.Sys
{
    /// <summary>
    /// 菜单表
    /// </summary>
    [Description("菜单表"), Table(Name = "sys_menu")]
    public class sys_menu : VersionEntity
    {
        /// <summary>
        /// 所属系统ID
        /// </summary>
        [Column(Name = "product_id")]
        public int ProductId { get; set; } = 0;
        /// <summary>
        /// 上级菜单ID
        /// </summary>
        [Column(Name = "parent_menu_id")]
        public int ParentMenuId { get; set; } = 0;
        /// <summary>
        /// 串联路径
        /// </summary>
        [Column(Name = "cascade_path")]
        public string CascadePath { get; set; } = string.Empty;
        /// <summary>
        /// 菜单名称
        /// </summary>
        [Column(Name = "menu_name")]
        public string MenuName { get; set; } = string.Empty;
        /// <summary>
        /// 显示名称
        /// </summary>
        [Column(Name = "title")]
        public string Title { get; set; } = string.Empty;
        /// <summary>
        /// 菜单图标
        /// </summary>
        [Column(Name = "icon")]
        public string Icon { get; set; } = string.Empty;
        /// <summary>
        /// 授权标识
        /// </summary>
        [Column(Name = "perm")]
        public string Perm { get; set; } = string.Empty;
        /// <summary>
        /// 类型 0 目录 10 菜单 20 按钮
        /// </summary>
        [Column(Name = "type")]
        public int Type { get; set; } = 0;
        /// <summary>
        /// 排序号
        /// </summary>
        [Column(Name = "order_num")]
        public int OrderNum { get; set; } = 0;
        /// <summary>
        /// 是否隐藏 1是 0否
        /// </summary>
        [Column(Name = "hidden")]
        public int Hidden { get; set; } = 0;
        /// <summary>
        /// 组件路径
        /// </summary>
        [Column(Name = "component")]
        public string Component { get; set; } = string.Empty;
        /// <summary>
        /// 组件路由path
        /// </summary>
        [Column(Name = "path")]
        public string Path { get; set; } = string.Empty;
        /// <summary>
        /// 重定向
        /// </summary>
        [Column(Name = "redirect")]
        public string Redirect { get; set; } = string.Empty;
        /// <summary>
        /// 描述
        /// </summary>
        [Column(Name = "description")]
        public string Description { get; set; } = string.Empty;
    }
}
